From 26c7d2863579692ba546c064989ecb4ebac44941 Mon Sep 17 00:00:00 2001 From: Ewan Mellor Date: Wed, 29 Nov 2006 12:14:45 +0000 Subject: [PATCH] Silence log message when trying to unregister a watch that's already been unregistered -- this is not a problem. Signed-off-by: Ewan Mellor --- tools/python/xen/xend/xenstore/xswatch.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tools/python/xen/xend/xenstore/xswatch.py b/tools/python/xen/xend/xenstore/xswatch.py index e84fe83ba9..a1ea740a94 100644 --- a/tools/python/xen/xend/xenstore/xswatch.py +++ b/tools/python/xen/xend/xenstore/xswatch.py @@ -5,6 +5,7 @@ # Public License. See the file "COPYING" in the main directory of # this archive for more details. +import errno import threading from xen.xend.xenstore.xsutil import xshandle @@ -65,7 +66,15 @@ def watchMain(): watch = we[1] res = watch.fn(we[0], *watch.args, **watch.kwargs) if not res: - watch.unwatch() + try: + watch.unwatch() + except RuntimeError, exn: + if exn.args[0] == errno.ENOENT: + # The watch has already been unregistered -- that's + # fine. + pass + else: + raise except: log.exception("read_watch failed") # Ignore this exception -- there's no point throwing it -- 2.30.2